Skip to navigation | Skip to main content | Skip to footer
Menu
Menu

School of Computer Science BCS accreditation 2021 - 2026

Artificial Intelligence MEng (Hons) - 2.1.1 Knowledge and understanding of facts, concepts, principles


Return to programme overview.

COMP10120 First Year Team Project

Enquiry based learning topics related to development of web based applications and group work.

Assesement : Individual coursework, Presentation, Lab work

COMP11120 Mathematical Techniques for Computer Science

It teaches areas of mathematics required for various fields of computer science in the form of the concept of proof, formal logic, probability, recursion and induction, relations, and linear algebra.

Assesement : Examination, Individual coursework

COMP11212 Fundamentals of Computation

The unit consists of two halves. The first introduces regular expressions, automata and grammars with an emphasis on the relationships between the formalisms and their use to solve problems. The second half uses a simple WHILE language to introduce the topics of complexity, correctness and computability.

Assesement : Examination, Individual coursework

COMP12111 Fundamentals of Computer Engineering

Covers basic logic design, combinatorial and sequential systems and processor design (memory, CPU and I.O.).

Assesement : Examination, Lab work

COMP13212 Data Science

This course is an introduction to data science, where data science refers to a set of concepts, techniques, and theories for extracting knowledge and information from data using computers.

Assesement : Examination, Lab work

COMP15111 Fundamentals of Computer Architecture

The course introduces the concepts involved in Fundamentals of Computer Architecture. Its aim is to enable the student to develop the skills required to comprehend Computer Systems, be they terminology, models, methodologies, structures (or topologies), timing, number representation and a general introduction to basic computer systems. Fundamental concepts are taught through lectures, example classes and labs

Assesement : Examination, Individual coursework

COMP15212 Operating Systems

Covers the architecture of principles of modern operating systems, including memory, processes, security, virtualisation, file systems. High level concepts cover abstraction, caching, hashing. Introduces the C programming language as a vehicle for exploring these concepts at OS level.

Assesement : Examination, Individual coursework

COMP16321 Introduction to Programming 1

This course is an introduction to programming the fundamental concepts surrounding this.

Assesement : Examination, Individual coursework, Lab work

COMP16412 Introduction to Programming 2

We teach the general principles of object oriented programming including encapsulation, inheritance, polymorphism, abstraction, inner classes and interfaces, in addition to the particularities of the Java language such as the Java Collections Framework and JavaFX.

Assesement : Examination, Individual coursework, Lab work, Workshops

COMP23311 Software Engineering 1

Building and testing large open source systems

Assesement : Examination, Individual coursework, Group coursework

COMP23412 Software Engineering 2

Students learn to build and maintain complex enterprise applications that follow established programming design patterns such as the Model View Controller (MVC). The theoretical principles of the MVC are put in practice on a widespread Web framework, ie Spring.

Assesement : Examination, Group coursework, Lab work

COMP24011 Introduction to AI

Students are given lectures and assigned reading on the theoretical basis of a range of commonly-used techniques in AI.

Assesement : Examination, Lab work

COMP24112 Machine Learning

This course has the following learning outcomes: (1) Describe essential and fundamental concepts in machine learning, including supervised and unsupervised learning, classification, regression and clustering, essential elements for building a machine learning system, and apply the knowledge to construct a machine learning task; (2) Explain different supervised learning models studied in the course unit, compare their differences, strengths and weaknesses, and apply the knowledge to decide which is appropriate for a particular application; (3) Explain clustering algorithms studied in the course unit and their applications; (4) Describe fundamental concepts in model evaluation and selection, explain the training, validation and testing processes, different methods for hyperparameter selection.

Assesement : Examination, Lab work

COMP24412 Knowledge Based AI

This course covers artificial intelligence concepts that are knowledge-based, including representing knowledge using logical frameworks, acquiring such knowledge (e.g. semantic parsing or ILP), and reasoning with such knowledge. The course, therefore, introduces key fundamental concepts and theoretical frameworks for achieving the above.

Assesement : Examination, Individual coursework, Lab work

COMP26020 Programming Languages & Paradigms

The course unit covers essential knowledge, concepts, principles in relation to different aspects of programming languages, including different paradigms (eg, imperative vs declarative) as well as compilation techniques and current trends.

Assesement : Examination, Individual coursework, Lab work

COMP26120 Algorithms and Data Structures

This course considers essential facts, concepts, principles and theories related to Algorithms and Data Structures, topics which are at the core of Computer Science. This includes theoretical tools include algorithmic complexity analysis and fundamental algorithmic design principles.

Assesement : Examination, Individual coursework, Lab work

COMP30040 Third Year Project Laboratory

The knowledge gained during the programme is demonstrated by the student in executing the project

Assesement : Individual coursework